Internet Protocols
đ 27. What are network protocols, and why are they needed?â
Network Protocols āĻšāϞ⧠āĻāĻāĻā§āĻā§āĻ Rules and Standards, āϝāĻž āύāĻŋāϰā§āϧāĻžāϰāĻŖ āĻāϰ⧠āύā§āĻāĻā§āĻžāϰā§āĻā§āϰ āĻā§āϤāϰ āĻĻāĻŋā§ā§ āĻĻā§āĻāĻŋ āĻĄāĻŋāĻāĻžāĻāϏā§āϰ āĻŽāϧā§āϝ⧠āĻā§āĻāĻžāĻŦā§ data āĻĢāϰāĻŽā§āϝāĻžāĻ, āϏā§āύā§āĻĄ āĻāĻŦāĻ āϰāĻŋāϏāĻŋāĻ āĻšāĻŦā§āĨ¤
đ āĻāĻā§āϞ⧠āĻĒā§āϰā§ā§āĻāύ, āĻāĻžāϰāĻŖ āĻĻā§āĻāύ āĻŦā§āϝāĻā§āϤāĻŋ āϝā§āĻŽāύ āĻāĻŋāύā§āύ āĻāĻžāώāĻžā§ āĻāĻĨāĻž āĻŦāϞāϞ⧠āĻā§āĻ āĻāĻžāĻāĻā§ āĻŦā§āĻāϤ⧠āĻĒāĻžāϰ⧠āύāĻž, āϤā§āĻŽāύāĻŋ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāϰā§āϰ āĻāĻžāώāĻžāĻ āϝāĻĻāĻŋ āĻāĻŋāύā§āύ āĻšā§, āϤāĻŦā§ āϤāĻžāϰāĻž data āĻāĻĻāĻžāύ āĻĒā§āϰāĻĻāĻžāύ āĻāϰāϤ⧠āĻĒāĻžāϰāĻŦā§ āύāĻžāĨ¤ protocol āύāĻŋāĻļā§āĻāĻŋāϤ āĻāϰ⧠āϝā§, āϏā§āύā§āĻĄāĻžāϰ āĻ āϰāĻŋāϏāĻŋāĻāĻžāϰ āĻāĻā§ā§āĻ āĻāĻāĻ āύāĻŋā§āĻŽ āĻŦāĻž āĻāĻžāώāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰāĻā§āĨ¤
đī¸ What is the role of the IEEE and IETF in defining protocols?â
- IETF (Internet Engineering Task Force): āĻāĻāĻŋ āĻāύā§āĻāĻžāϰāύā§āĻā§āϰ āĻŦāĻŋāĻāĻŋāύā§āύ āϏāĻĢāĻāĻā§ā§āϝāĻžāϰ āĻāĻŦāĻ āĻĒā§āϰāĻā§āĻāϞā§āϰ āĻŽāĻžāύ āĻāύā§āύā§āύ āĻāϰā§āĨ¤ āϝā§āĻŽāύ: TCP/IP, HTTP, DNS āĻĒā§āϰā§āĻā§āĻāϞā§āϰ āϏā§āĻā§āϝāĻžāύā§āĻĄāĻžāϰā§āĻĄ āĻāĻŦāĻ RFC (Request for Comments) āϤāĻžāϰāĻžāĻ āĻŽā§āύāĻā§āĻāύ āĻāϰā§āĨ¤
- IEEE (Institute of Electrical and Electronics Engineers): āĻāϰāĻž āĻŽā§āϞāϤ āĻšāĻžāϰā§āĻĄāĻā§ā§āϝāĻžāϰ āĻāĻŦāĻ āĻĢāĻŋāĻāĻŋāĻā§āϝāĻžāϞ āϞā§ā§āĻžāϰā§āϰ protocol āĻāĻŦāĻ āϏā§āĻā§āϝāĻžāύā§āĻĄāĻžāϰā§āĻĄ āϏā§āĻ āĻāϰā§āĨ¤ āϝā§āĻŽāύ: Wi-Fi āĻāϰ āϏā§āĻā§āϝāĻžāύā§āĻĄāĻžāϰā§āĻĄ (IEEE 802.11) āĻŦāĻž āĻāĻĨāĻžāϰāύā§āĻā§āϰ (Ethernet) āϏā§āĻā§āϝāĻžāύā§āĻĄāĻžāϰā§āĻĄāĨ¤
đ How do proprietary protocols differ from open standards?â
- Proprietary Protocols: āĻāĻā§āϞ⧠āĻā§āύ⧠āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āĻĒā§āϰāϤāĻŋāώā§āĻ āĻžāύ āĻŦāĻž āĻā§āĻŽā§āĻĒāĻžāύāĻŋāϰ āϤā§āϰāĻŋ āĻāϰāĻž āĻŦā§āϝāĻā§āϤāĻŋāĻāϤ protocol, āϝāĻž āĻļā§āϧ⧠āϤāĻžāĻĻā§āϰ āϤā§āϰāĻŋ āĻšāĻžāϰā§āĻĄāĻāϝāĻŧā§āϝāĻžāϰ āĻŦāĻž āϏāĻĢāĻāĻā§ā§āϝāĻžāϰā§āĻ āĻāĻžāĻ āĻāϰ⧠(āϝā§āĻŽāύ: Apple āĻāϰ AirPlay āĻŦāĻž Microsoft-āĻāϰ RDP)āĨ¤
- Open Standards: āĻāĻā§āϞ⧠āϏāĻŦāĻžāϰ āĻāύā§āϝ āĻāύā§āĻŽā§āĻā§āϤ (āϝā§āĻŽāύ: HTTP āĻŦāĻž TCP/IP)āĨ¤ āĻŦāĻŋāĻļā§āĻŦā§āϰ āϝ⧠āĻā§āĻ āϤāĻžāĻĻā§āϰ āĻĄāĻŋāĻāĻžāĻāϏ⧠āĻāĻ protocol āĻāĻŽāĻĒā§āϞāĻŋāĻŽā§āύā§āĻ āĻāϰ⧠āĻāĻā§ āĻ āύā§āϝā§āϰ āϏāĻžāĻĨā§ āύāĻŋāϰā§āĻŦāĻŋāĻā§āύ⧠āϝā§āĻāĻžāϝā§āĻ āĻāϰāϤ⧠āĻĒāĻžāϰā§āĨ¤
đĄī¸ 28. What is the role of protocols in ensuring data transfer integrity and reliability?â
info āĻŦāĻž data āϝāĻāύ āϤāĻžāϰā§āϰ āĻŦāĻž āĻšāĻžāĻā§āĻžāϰ āĻŽāĻžāϧā§āϝāĻŽā§ āĻāĻ āĻāĻžā§āĻāĻž āĻĨā§āĻā§ āĻ āύā§āϝ āĻāĻžā§āĻāĻžā§ āϝāĻžā§, āϤāĻāύ āĻĢāĻŋāĻāĻŋāĻā§āϝāĻžāϞ āĻāĻžāϰāĻŖā§ data āĻāϰāĻžāĻĒā§āĻ āĻŦāĻž āύāώā§āĻ āĻšāϤ⧠āĻĒāĻžāϰā§āĨ¤ āύā§āĻāĻā§āĻžāϰā§āĻ āĻĒā§āϰāĻā§āĻāϞāĻā§āϞ⧠āύāĻŋāĻļā§āĻāĻŋāϤ āĻāϰ⧠āϝā§, āĻĒāĻžāĻ āĻžāύ⧠data āĻ āĻŋāĻāĻ āĻžāĻāĻŽāϤ⧠āĻāύā§āϤāĻŦā§āϝ⧠āĻĒā§āĻāĻāĻžāĻā§āĻā§ āĻāĻŋ āύāĻž (Reliability) āĻāĻŦāĻ āĻŽāĻžāĻāĻĒāĻĨā§ dataāϰ āĻā§āύ⧠āĻĒāϰāĻŋāĻŦāϰā§āϤāύ āĻšā§ā§āĻā§ āĻāĻŋ āύāĻž (Integrity)āĨ¤
Protocol āĻšāϞ⧠āĻāĻāĻāĻŋ āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ set of rules āϝāĻž āĻĻā§āĻāĻŋ device-āĻāϰ āĻŽāϧā§āϝ⧠communication āĻā§āĻāĻžāĻŦā§ āĻšāĻŦā§ āϤāĻž āύāĻŋāϰā§āϧāĻžāϰāĻŖ āĻāϰā§āĨ¤ Data transfer-āĻ integrity āĻ reliability āύāĻŋāĻļā§āĻāĻŋāϤ āĻāϰāϤ⧠protocol āĻŦāĻŋāĻāĻŋāύā§āύāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāϰā§:
đš ā§§. Error Detection āĻ Correctionâ
Protocol āĻā§āϞ⧠checksum, CRC (Cyclic Redundancy Check), āĻāĻŦāĻ parity bit āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰā§āĨ¤ Sender data āĻĒāĻžāĻ āĻžāύā§āϰ āϏāĻŽāϝāĻŧ āĻāĻāĻāĻŋ checksum āϝā§āĻ āĻāϰā§, receiver āϏā§āĻāĻž āĻŽāĻŋāϞāĻŋāϝāĻŧā§ āĻĻā§āĻā§ â āύāĻž āĻŽāĻŋāϞāϞ⧠āĻŦā§āĻā§ data corrupt āĻšāϝāĻŧā§āĻā§āĨ¤
đš ⧍. Acknowledgement (ACK) āĻ Retransmissionâ
TCP (Transmission Control Protocol)-āĻ receiver āĻĒā§āϰāϤāĻŋāĻāĻŋ packet āĻĒāĻžāĻāϝāĻŧāĻžāϰ āĻĒāϰ ACK āĻĒāĻžāĻ āĻžāϝāĻŧāĨ¤ Sender āύāĻŋāϰā§āĻĻāĻŋāώā§āĻ āϏāĻŽāϝāĻŧā§āϰ āĻŽāϧā§āϝ⧠ACK āύāĻž āĻĒā§āϞ⧠(timeout) packet āĻāĻŦāĻžāϰ āĻĒ āĻžāĻ āĻžāϝāĻŧ â āĻāĻāĻžāĻā§ āĻŦāϞ⧠retransmissionāĨ¤
đš ā§Š. Sequencing āĻ Reorderingâ
Network-āĻ packets āĻāĻŋāύā§āύ āĻāĻŋāύā§āύ route āĻĻāĻŋāϝāĻŧā§ āĻāϏāϤ⧠āĻĒāĻžāϰā§, āĻĢāϞ⧠out of order āĻĒā§āĻāĻāĻžāϤ⧠āĻĒāĻžāϰā§āĨ¤ Protocol sequence number āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāϰ⧠āϝāĻžāϤ⧠receiver āϏāĻ āĻŋāĻ order-āĻ data reassemble āĻāϰāϤ⧠āĻĒāĻžāϰā§āĨ¤
đš ā§Ē. Flow Controlâ
Sender āϝāĻĻāĻŋ receiver-āĻāϰ āĻā§āϝāĻŧā§ āĻŦā§āĻļāĻŋ āĻĻā§āϰā§āϤ data āĻĒāĻžāĻ āĻžāϝāĻŧ, āϤāĻžāĻšāϞ⧠data āĻšāĻžāϰāĻŋāϝāĻŧā§ āϝā§āϤ⧠āĻĒāĻžāϰā§āĨ¤ Flow control (āϝā§āĻŽāύ TCP-āĻāϰ sliding window) āĻāĻ āϏāĻŽāϏā§āϝāĻž āϰā§āϧ āĻāϰā§āĨ¤
đš ā§Ģ. Congestion Controlâ
Network-āĻ āĻ āϤāĻŋāϰāĻŋāĻā§āϤ traffic āĻšāϞ⧠congestion āϤā§āϰāĻŋ āĻšāϝāĻŧāĨ¤ TCP-āĻāϰ congestion control algorithm (āϝā§āĻŽāύ slow start, AIMD) data loss āĻāĻŽāĻžāϝāĻŧ āĻāĻŦāĻ network stable āϰāĻžāĻā§āĨ¤